Nowadays, video sequences coded in a diversity of video coding standards such as MPEG-2, MPEG-4, H.263, and H.264, are transmitted in real time over a variety of networks, for example, wired networks, wireless networks, local area networks, etc. For this purpose, these video sequences are transcoded from one video coding standard to another based on the requirements of users, network characteristics, for example, bandwidth, and features, such as, display capabilities, buffer capacity, etc., of terminal devices used by the users.
A transcoder converts a pre-compressed bit-stream encoded in a particular video coding standard and having a specific bit-rate into another compressed bit-stream having a different bit-rate for same or different video coding standard by using bit-rate controllers. A bit-rate controller, as used within transcoders, is of prime concern in video encoding as it dynamically adjusts the transcoder parameters such that generated bit-rates from the transcoder are as close as possible to the target bit-rate. The target bit-rate is usually computed at the start of the video sequence encoding. Various bit-rate controllers have been proposed in the past to adapt the bit-rate generated by a transcoder to match the available/actual bit-rate and bandwidth of a transmission channel.
Bit-rate controllers allocate bits to different types of picture frames, namely, I-picture frames, P-picture frames, and B-picture frames, in an input video sequence to a transcoder. These picture frames, typically twelve in number, constitute a group of pictures (GOP) structure. Typically, a GOP structure starts with an I-picture frame and does not have more than one I-picture frame. In general, I-pictures require more bits than P and B-picture frames because the former does not take temporal correlation between successive pictures. Therefore, in order to have a wise use of bits distribution over the three picture types in a GOP, it is necessary to have a priori knowledge of the GOP structure of the input bit-stream. The main encoder has information regarding bits distribution and can set the quantization parameter (QP) based on the priori information. However, the transcoder does not have such knowledge and therefore, is not certain about bits distribution. A transcoder has, in essence, no control over the GOP structures of the new output bit-stream.
In conventional transcoders, existing bit-rate controllers assume or predict a particular GOP structure based on history of previous input bit-streams. However, this kind of prediction fails if the GOP structure changes dramatically or if the current GOP length is very high or very low based on past histories. Moreover, some bit-rate controllers can only provide a transcoded video coding standard in the same video coding standard as that of the input bit stream. Since the interpretation of QP is different for different standards, there is no efficient solution for a first video coding standard to a second video coding standard transcoding.
Existing solutions for bit-rate controllers work well for low-delay video transcoding but cannot be extended for B-pictures, which are very common in present day scenario. Hence, the dependency on the prediction techniques of a GOP structure as well as using these techniques in the bit-rate controllers for a conventional transcoder is error prone and inefficient.